
// 目前 requestIdleCallback 目前只有Chrome支持
// 所以目前 React利用 MessageChannel模拟了requestIdleCallback，将回调延迟到绘制操作之后执行
// MessageChannel API允许我们创建一个新的消息通道，并通过它的两个MessagePort属性发送数据
// MessageChannel创建了一个通信的管道，这个管道有两个端口，每个端口都可以通过postMessage发送数据，而一个端口只要绑定了onmessage回调方法，就可以接收从另一个端口传过来的数据
// MessageChannel是一个宏任务



let messageChannel = new MessageChannel();
let port1 = messageChannel.port1;
let port2 = messageChannel.port2;
port1.onmessage = (event) => {
    console.log('port1.onmessage', event.data); //port1.onmessage port2发送给port1
}
port2.onmessage = (event) => {
    console.log('port2.onmessage', event.data); //port2.onmessage port1发送给port2
}
port1.postMessage("port1发送给port2");
port2.postMessage("port2发送给port1");
